package 堆;

import java.util.Arrays;
import java.util.PriorityQueue;

/**
 * @author TTDB
 * @create 2025/9/23
 */
public class findKthLargest {
     public int findKthLargest(int[] nums, int k) {
        // 小顶堆，堆顶是最小元素
        PriorityQueue<Integer> pq = new PriorityQueue<>();
        for(int e : nums){
             // 每个元素都要过一遍二叉堆
            pq.offer(e);
        }
        // 堆中元素多于 k 个时，删除堆顶元素
        while(pq.size() > k){
            pq.poll();
        }
        return pq.peek();
//      Arrays.sort(nums);
//      return nums[nums.length - k];
    }
}
